 \documentclass[preprint,11pt]{elsarticle}
 
\usepackage{intestazione2}
\usepackage{macron}
%\usepackage{geometry}
\usepackage{times}
\usepackage{mathpartir}


\begin{document}
 
\begin{frontmatter}
\title{Disciplined Structured Communications with \\ 
%Consistent
Disciplined Runtime Adaptation}
%\title{Disciplined Adaptation for Structured Communications}
\author[evry]{Cinzia Di Giusto} 
\author[unl]{Jorge A. P\'{e}rez}

%\cortext[cor1]{Corresponding author}  
\address[evry]{Universit\'e d'Evry - Val d'Essonne, Laboratoire IBISC}
\address[unl]{CITI and Departamento de Inform\'atica, FCT Universidade Nova de Lisboa}


     
\begin{abstract}
\emph{Session types} offer a powerful type-the\-o\-ret\-ic foundation for the analysis of 
structured communications, as commonly found in serv\-ice-oriented systems.
They are defined upon core programming calculi which offer only limited support 
for expressing adaptation and evolvability requirements.
This is unfortunate, as serv\-ice\--ori\-ented systems are increasingly being deployed upon 
highly dynamic infrastructures in which such requirements are 
central concerns.
In previous work, we developed a process calculi framework of \emph{adaptable processes},
in which concurrent processes can be replaced,  suspended, or discarded at runtime.
In this paper, we 
propose a session types discipline for a calculus with adaptable processes. 
Our typed framework offers an alternative for integrating runtime adaptation mechanisms in 
the modeling and analysis of structured communications.
We show that 
well-typed processes enjoy \emph{safety} and \emph{consistency} properties:
while the former ensures the absence of communication errors at runtime, the latter
guarantees that active session behavior is never disrupted by adaptation actions.
\end{abstract}

\end{frontmatter}

%\todo{TO DO:
%\begin{itemize}
%%\item definition and proof of consistency; harmonize presentation with safety
%%\item extend example?
%%\item say something about linear/single process variables?
%%\item we have no restriction on names... i can't recall why
%%\item alternative typing rules for adaptation for process with open sessions
%%\item interface compatibility
%%\item extended comparisons with session types with exceptions
%\item comparisons with the version in SAC'13
%\end{itemize}
%}

\section{Introduction}
\input{intro}
% 
 \section{A Process Language with Runtime Adaptation}\label{sec:syn}
 \input{calculi}
% 
 \section{The Type System}\label{s:types}
 \input{newtype}
% 
 \section{Session Safety and Consistency by Typing}\label{sec:res}
 \input{theorems}
% 
 \section{Example: An Adaptable Client/Service Scenario}\label{sec:exam}
 \input{exserver}
% 
 \section{Discussion: Towards More Flexible Interfaces}\label{sec:int}
 \input{interface}
% 
 \section{Related Work}\label{sec:rw}
 \input{conclud}
% 

{\small
\bibliographystyle{abbrv}
\bibliography{referen}
}

\end{document}